This is a major update of Charon, from the previous publically released version v 0.98.5. For those who are already familiar with Charon from this previous version, please refer to the "What's New in Charon?" file.
This document is based on the old Charon Readme, with any changes as deemed appropriate to the new version.
CONTENTS: * 1. Introduction
* 2. Configuring Charon
* 3. Using Charon
* 3. Some typical setups
* 4. Notes for this beta version, solving problems
ACKS:
Zmodem Sources: Bit Bucket Software Co, the Zmodem code from Binkley 2.50
EMSI Sources: based on Anthony Rumble's Unix pointmailer NixMail 0.05a
Fido related Expert Advice: Stefan van Dessel
DISCLAIMER DEPARTMENT:
Responsibility for damage caused by the use of Charon lies with the user only. No profit may be made by distributing Charon (freeware distributors may not charge more than $6 for the disk that contains Charon, including the disk itself and postage) without prior permission by the author.
WHO'S IN CHARGE?
As you can see from the copyright notice above, development of Charon is now mainly done by me, Peter Kocourek. The reason for this being, that Oscar no longer had the time to do much work on Charon anymore. Oscar can still be reached by snailmail, at the address below. You could also try sending him netmail or email, but he hasn't read either for quite a while now.
For most issues related to Charon, you should contact me, at one of the addresses listed below. Sometimes I'm in a bit of a time-shortage myself, but I generally try to answer all incoming mail.
QUESTIONS, BUG REPORTS & COMPLAINTS:
* Peter Kocourek, Schouwweg 4, 2243 BA Wassenaar, The Netherlands.
* Internet: qsi@cnh.wlink.nl
* Fidonet: 2:281/514.10, 2:281/527.13
Oscar can be reached by one of the following means:
* Oscar Vermeulen, Hildebrandhove 108, 2726 AZ Zoetermeer, The Netherlands.
* Phone (voice, no modems, please): +31-79-213312
* Internet: oscar@cnh.wlink.nl
* Fidonet: 2:281/527.18, 2:281/514.11
* Please let us know if something is not working as it should.
Charon is a 'freeware' fidonet pointmailer featuring the standard EMSI and YooHoo protocols and fast ZedZap (zmodem) file transfers. It is designed to be used together with CounterPoint or Alice (v2.21 upwards), or to serve as a replacement for MacWoof's built-in mailer. Other message editors should work as well.
Some pro's of Charon:
1) Up-to-date connects with DOS-based mailers, using EMSI (multi-address
ability for those who need it) and efficient, reliable ZedZap transfers,
2) no shareware fee,
3) simple to install and use.
4) fully scriptable with AppleScript, or other OSA compliant scripting systems.
Some cons:
1) a pointmailer is only useful for point setups: it will NOT answer incoming calls.
2) this is a beta release, so there are supposed to be bugs and imperfections.
3) no FTS-0001 support. FTS-0001 was the original Xmodem based fidonet protocol, which was more or less replaced by YooHoo and EMSI some years ago.
The third point needs some elaboration. Charon has been tested with many fidonet mailers in use today. Tabby is the only one that will not work, since it recognises only the FTS-0001 protocol.
Now that Mac BBS systems are gradually replacing Tabby with Formula 1, I'm not bothered too much by this incompatibility. Besides, MacWoof already serves as a decent FTS-0001 mailer if you do need to connect with Tabby.
The Charon & Obolus combo:
-------------------------
Obolus is a mail exporter for CounterPoint, developed by Peter Kocourek. Charon can use it to automatically extract the messages you wrote in CounterPoint, right before dialing your boss. In everyday use, Obolus runs almost invisibly from within Charon. Its use is entirely optional, but recommended for CounterPoint users.
Babble:
-------
Charon was bolted together as a piece of freeware using the following sources:
Zmodem Sources: Bit Bucket Software Co, the Zmodem code from Binkley 2.50
EMSI Sources: Anthony Rumble, from his excellent Unix pointmailer NixMail 0.05a
A Big Thank You to these authors. In accordance with their Copyleft scheme, Charon's sources are available from me upon request, with the provision that you do not use them to make another mailer.
Thanks also to Peter Kocourek, for providing me with some of the toughest Mac code in Charon, and for writing Obolus. Experts in Greek mythology will not be surprised that Charon and Obolus were developed to work together. They will also know our opinion regarding the DOS-based world on the other side of the phone line...
The basic idea behind Charon is very simple -- Charon sends all files (normally, .pkt files) that are placed in an outbound folder to its Boss, and puts all files offered by its Boss in an inbound folder. A configuration file is used to store all necessary information.
Installing Charon is a matter of creating a config file for every fido system you want to call. To create your first config file, select 'New...' in the File menu. After this first config file is saved to disk (use 'Save' or 'Save As...' in the File menu), you can create new ones much more quickly by selecting 'Edit Config'.
Charon does not check your configs for errors. The information you enter in the three dialogs that follow 'New...' or 'Edit Config' has to be right to let Charon do its work, so be careful. Balloon Help is available for system 7 users.
2.a. -- The POINT SETUP dialog:
-------------------------------
This dialog first asks for your point's name and other information required for a successful fido connect. Also, here you can set up your modem. Use your own favorite modem-init string, but be sure to include X3E0 (zero, not the letter o) at the end of the string. If you suffer from sudden disconnects, add &D0.
2.b. -- BOSS SETUP dialog:
-------------------------------
This dialog wants some data specific to your boss's system:
1) Your boss's address (which is used as the filename for the config file),
2) Its name and telephone number,
3) Your password (if used),
4) Your own point address. If you want to present more than one address to your boss (useful with EMSI systems only), enter them all, separated by ONLY a single space, as in the default example.
--'Try EMSI before YooHoo': keep this checked at first. If you notice that Charon mentions YooHoo anyway when calling your boss, uncheck this to speed things up.
--INBOUND Folder: where to store received files.
a) using CounterPoint or Obolus: select CounterPoint's 'PKT's' folder.
b) MacWoof: Select the folder Woof shows when you select 'File->import'.
--OUTBOUND Folder: Charon transmits ALL files found in this folder.
a) for CounterPoint: Use Counterpoint's 'Gateway' folder,
b) MacWoof: use an empty folder to store outbound packet files.
c) for CounterPoint+Obolus: The folder you select here must be the same as the "outbound" folder you selected in Obolus. Obolus creates subfolders within this folder, one for each address it finds mail for. Charon automatically finds the correct folders within this structure. This is especially useful, if you have more than one address at the same boss. Be sure to use EMSI in this case; Charon will parse the addresses the boss sends in the EMSI handshake during the poll, and then Charon will send all the relevant mail for those addresses.
--OBOLUS (if used): Select the Obolus program file. This will start Obolus before your boss is called to create outbound files. NOTE: be sure _not_ to check 'run Charon' in Obolus' own config.
2.c. -- DECOMPRESSION Dialog:
---------------------------
Charon can decompress inbound mail packets. It does so by calling either ZipIt (ZIP) or AutoUnArj (ARJ) right after polling your boss. AutoUnArj, by the way, is a modified version of unArj Mac, the original Mac port by Erik Larson. I can send you a beta version upon request.
If you use some other decompression program, select it as an AutoUnArj program, and set the file type and creator to whatever your program desires. The program will be started from Charon automatically, though you'd have to do the rest.
NOTE: Only files with the standard fido filename extensions .mo?…. .su? (i.e., 00fe5c3e.mo1) are considered to be compressed inbound mail. Other files (received as result of a file request, for instance) are not decompressed by Charon.
PHEW....
-------
Once you're done with filling in all this info, you can try dialing out, or even better, you might want to save the config.
Simply double-click the appropriate config file (put it on your desktop to have it at hand?) and hit the Dial button. If you want Charon to start dialing automatically after you've double-clicked on the config file, set the "Unattended Mode" in the "Special" menu. Alternatively, run Charon, open a config file, hit Dial. If you selected so, Obolus will be run before dialing out to prepare the outbound mail.
You can always abort the polling process by hitting [command]-[.]. Aborted Zmodem transfers will be resumed automatically at the next poll. During Zmodem transfers, the effect of cmd-. may be slow in coming.
If you selected a decompression program to be used, Charon deletes the compressed packets after it has ascertained decompression was successful. As a measure of precaution, you can still find the deleted files in the trash can.
Freqs and File Attach messages:
-----------------------------
File Requests: Your message editor creates a standard .REQ file. Just put it in the outbound folder. File Attaches: Create a file attach message, and drop the attached file in the outbound folder. If you want to attach programs, convert them to MacBinary format, or use a compression program like ZipIt.
Registration:
------------
Charon is freeware, so registration is just a formality. It is 'required' nevertheless, just to satisfy my own curiosity... All it takes is a few seconds, simply use the Special->Registration menu item to create an automatic netmail to me. Thank you!
Preferences:
------------
The "unattended" mode was discussed above; it is basically an auto-pilot, to enable you dial out more easily. It eliminates pressing the "Dial" button once Charon is started.
Other preferences can be edited in the Preferences dialog, which you can invoke from the "Special" menu.
The "Paranoid Logging" option needs only be used when you're having problems with Charon crashing, and no "serialLog" file survives. Switching it on can cause big slowdowns, because the disk cache is forcibly flushed after each new entry in the log file. Don't use this unless you have to.
The "Alternate Wakeup" may come in handy Charon has problems establishing a mailsession with your boss. If checked, Charon will use a slightly different method to establish a connection.
"Don't Use Color" will suppress the color dialogs in Charon. You need to quit and relaunch Charon to see it having effect.
"Trash Partially Received Files" does what it says.
The timeout you can specify is the number of seconds Charon will wait after it has received the first character from the modem. For most modems, 25 seconds is plenty, but you may have to increase to a higher value if the modem for instance returns "RING"s when the phone rings after dialing.
My own favourite point setup consists of Charon, AutoUnArj or ZipIt (whatever your boss uses to compress received packets), CounterPoint, and Obolus (which enables Charon to extract outbound messages all by itself).
This is, however, no more than my personal opinion. You can skip Obolus, or use MacWoof or Alice as a message editor, or use any other software (I still use a message editor running under Soft PC, for instance....). Charon just looks for packets to send, and doesn't care.
a. Setting up CounterPoint to work with Charon:
--------------------------------------------
Read CounterPoint's 'MacWoof Setup' text file (or just select MacWoof as CounterPoint's mailer). Everything's the same for Charon, BUT:
- Put Charon in the CounterPoint folder. Select Charon as
CounterPoint's System Paths '1st Launch' item.
- Poll your boss using CP's 'Call Remote System' menu item. This
will export your outbound mail and start Charon. Hit Charon's
Dial button to start.
b. Setting up CounterPoint and Obolus to work with Charon:
Just as described above. But - run Charon from the finder (otherwise CP will do the exporting itself before Obolus gets a chance) any time you feel the urge to call your boss; you don't need to bother with creating/exporting .pkts. Obolus does that automatically from within Charon.
c. Setting up MacWoof to work with Charon:
-----------------------------------------
Use 'Import' and 'Export' in Woof's File menu to create outbound packets and to process inbound packets. Note that Charon is useful only if your boss doesn't use Tabby. Because it uses zmodem transfers, Charon is slightly faster than MacWoof, and offers more secure transfers (aborted transfers are resumed automatically, for instance).
d. Setting up Charon with Alice:
--------------------------------
The documentation for setting up Charon with Alice is far, far better than this document. Eric Hoffman's guide, included in the Alice package, is highly recommended, even if you're not actually using Alice. (Writing documentation is not exactly one of my favorite pastimes...)
Officially, this is still a beta version, because it still lacks crashmail/nodelist capabilities. However, I am fairly confident Charon should behave quite decently under most circumstances.
Charon has been tested successfully with FrontDoor, Binkley, D'Bridge, Binkley ST, TheBox ST, TheBox PC, Dutchie, Intermail and Formula 1 systems. If you encounter a bug nevertheless, please save the SerialLog file and mail it to me. Also, maybe you can try if the bug can be reproduced, and look at the information that appears with Debug Stuff selected (just click on the miniature button in Charon's main window).
Known bugs:
- This manual. Due to a lack of time, this doc is not as user-
friendly as it should be. I know.
- Drag-dropping something else than a proper config file
on Charon sometimes leads to a crash.
- The Box ST (v1.10) works, but uncheck 'Try EMSI'.
Solving problems:
----------------
Are your address, password and other config items entered right? If the poll proceeds OK without any mail being transferred, that's probably it. Otherwise:
A) use the miniature 'Debug' button to see what exactly is going wrong during a connect. The Debug mode prevents Charon from deleting the outbound packets -- they'll be sent again next time, if you do not delete them yourself.
B) Charon writes its EMSI/YooHoo chatter in a file called SerialLog. You can look at this textfile to see the stuff Charon [r]eads and [w]rites to the serial port.
C) Maybe your boss doesn't like EMSI, force YooHoo only in the Boss Config dialog.
D) Otherwise, change the file type of the config file you use to TEXT and look at it. Maybe there's something wrong? Change it and return the file type back to NDNR. Look at the SYSTEM_NODE line especially if you connect successfully, but don't get any mail from your boss.
E) Fiddle with the following kludges (this is actually not what is going to solve your problems, but anyway): Change the STR resources 128 or 129 using ResEdit. Changing 128 from 1 to 2 gives you a different wake-up sequence, changing 129 from Y to N makes Charon appear in its B/W form on Colour QuickDraw machines. Use this if you find my colour scheme offensive.
If you are checking the SerialLog file, EMSI connects work like this:
Send couple of CRs
-> boss sends EMSI_REQ (if not: fall back to YoHoo, see below)
Send EMSI_INQ
Send point's EMSI_DAT. This contains the data about your setup.
-> boss sends EMSI_ACK twice
-> boss sends EMSI_DAT. Charon currently does not care about the contents.
Send EMSI_ACK twice (or more, unimportant)
After that, it is a matter of sending the mail (not in SerialLog):
Send Zmodem outbound files ('sz filename' in Unix terms)
Send End-of-Zmodem-send (sz NULL)
Receive inbound files (rz)
YooHoo goes like this:
Flush garbage, Send YOOHOO and TSYNC bytes
-> Get ENQ byte (**)
Send 0x1F, a 128 byte data packet, two CRC bytes.
-> Get ACK byte
-> Get YOOHOO (also called YooHoo/2U2)
Send ENQ
-> Get 0x1F, a 128 byte data packet, two CRC bytes.
Send ACK, Do Zmodem sending/receiving.
(**): If you get 2 'C's or NAKs in a row, that indicates a dinosaur. The boss only supports FTS-0001 Xmodem transfers, which are not built into Charon yet. As far as I know, only Tabby falls under this category.